package co.yixiang.modules.product.vo;

import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

import java.io.Serializable;

/**
 * @ClassName ReplyCount
 * @Author hupeng <610796224@qq.com>
 * @Date 2019/11/4
 **/
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
public class ReplyCountVo implements Serializable {

    @ApiModelProperty(value = "总的评论数")
    private Integer sumCount;

    @ApiModelProperty(value = "好评数")
    private Integer goodCount;

    @ApiModelProperty(value = "中评数")
    private Integer inCount;

    @ApiModelProperty(value = "差评数")
    private Integer poorCount;

    @ApiModelProperty(value = "好评率")
    private String replyChance;

    @ApiModelProperty(value = "好评星星数")
    private String replySstar;

    public static ReplyCountVoBuilder builder() {
        return new ReplyCountVoBuilder();
    }

    public static class ReplyCountVoBuilder {
        private Integer sumCount;
        private Integer goodCount;
        private Integer inCount;
        private Integer poorCount;
        private String replyChance;
        private String replySstar;

        ReplyCountVoBuilder() {
        }

        public ReplyCountVoBuilder sumCount(Integer sumCount) {
            this.sumCount = sumCount;
            return this;
        }

        public ReplyCountVoBuilder goodCount(Integer goodCount) {
            this.goodCount = goodCount;
            return this;
        }

        public ReplyCountVoBuilder inCount(Integer inCount) {
            this.inCount = inCount;
            return this;
        }

        public ReplyCountVoBuilder poorCount(Integer poorCount) {
            this.poorCount = poorCount;
            return this;
        }

        public ReplyCountVoBuilder replyChance(String replyChance) {
            this.replyChance = replyChance;
            return this;
        }

        public ReplyCountVoBuilder replySstar(String replySstar) {
            this.replySstar = replySstar;
            return this;
        }

        public ReplyCountVo build() {
            return new ReplyCountVo(sumCount, goodCount, inCount, poorCount, replyChance, replySstar);
        }

        public String toString() {
            return "ReplyCountVo.ReplyCountVoBuilder(sumCount=" + this.sumCount + ", goodCount=" + this.goodCount + ", inCount=" + this.inCount + ", poorCount=" + this.poorCount + ", replyChance=" + this.replyChance + ", replySstar=" + this.replySstar + ")";
        }
    }
}
